package com.py.custom.tms.application.atomic.array;

/**
 * description：
 * 给你一个数组 nums 和一个值 val，你需要 原地 移除所有数值等于 val 的元素，并返回移除后数组的新长度。
 *link
 * @author pengyou
 * @version 1.0.0
 * @date 2022/4/8
 */
public class RemoveItem {

    public static void main(String[] args) {
        int[] nums = {0, 1, 2, 2, 3, 0, 4, 2};
        int val = 2;
        System.out.println("removeElement() = " + removeElement(nums, val));
    }


    public static int removeElement(int[] nums, int val) {
        int fast = 0;
        int slow = 0;
        for (; fast < nums.length; fast++) {
            if (nums[fast] != val) {
                nums[slow] = nums[fast];
                slow++;
            }
        }
        return slow;
    }
}
